在 nginx.conf 里面配置多个 server:

在开始处理一个 http 请求时,nginx 会取出 header 头中的 host,与 nginx.conf 中每个 server 的 server_name 进行匹配,以此决定到底由哪一个 server 块来处理这个请求

里面的 server_name:

用于配置基于名称的虚拟主机

除了完全匹配,还可以以通配符:

1、以*通配符开始的字符串:

server_name *.domain.com;

2、以*通配符结束的字符

server_name www.*;

3、匹配正则表达式

server_name ~^(?.+).domain.com$;
server {
     listen    80 default_server;
     server_name    www.123.com;
     root    /home/web1;
     location / {
     }
     error_page 404 /404.html;
         location = /40x.html {
     }
     error_page 500 502 503 504 /50.xhtml;
         location = /50x.html {
     }
 }
server {
     server_name www.abc.com;
     root    /home/web2;
     location / {
     }
     error_page 404 /404.html;
         location = /40x.html {
     }
     error_page 500 502 503 504 /50x.html;
         location = /50x.html {
     }
 }

dailyvuejs
1.6k 声望307 粉丝

目前专注 Vue CLI 3 源码和 vue.config.js 配置内部设计等学习分享